1. Field of the Invention
The present invention relates to a transmitting apparatus and method, and a receiving apparatus and method, and, more particularly, to a transmitting apparatus and method and a receiving apparatus and method for transmitting or receiving a pack of 2,048 bytes through the digital interface in accordance with the IEEE 1394 standard.
2. Description of the Related Art
The DVD (digital versatile disc)-Video (hereinafter referred to simply as DVD) has recently been standardized. It is expected to be used widely. In the DVD, video data is recorded by being compressed in the MPEG (Moving Picture Experts Group)-PS (program stream) form. A DVD player reproduces, in its drive section, data from the DVD, and decodes, in its decoding section, the data in the MPEG program stream form reproduced from the DVD. The DVD player outputs the decoded data to a television receiver or the like to display images corresponding to the data.
It is possible that a television receiver having, for example, a function of decoding MPEG-PS-encoded data will be developed. In such a case, it is conceivable that a DVD player and a television receiver having such a decoding function are connected to each other through an AV bus, and a bit stream in an encoded state is output from the DVD player and is supplied via the AV bus to the television receiver having the decoding function to be decoded on the television receiver side.
A system has been conceived in which a DVD player and a television receiver are connected through an AV bus as described above, and in which an interface in accordance with the IEEE (The Institute of Electrical and Electronic Engineers) 1394 High Performance Serial Bus standard is used to perform data communication.
FIG. 20 shows an example of the relationship between original data and actually transmitted packets in isochronous communication in accordance with the IEEE 1394 standard.
As shown in FIG. 20, a 4-byte source packet header and padding data for controlling the data length are added to each of source packets, which are original data, and each packet is thereafter divided into a predetermined number of data blocks. The unit of data in each transmitted packet is one quadlet (=four bytes). Therefore, the byte length of each of data blocks, various headers and so on is set to a multiple of 4.
FIG. 21 shows the format of the source packet header. As 25 bits in the header, a time stamp which is used to suppress jitter, for example, when MPEG-TS (transport stream) data used in digital satellite broadcasting or the like is transmitted in isochronous communication is written.
Such a packet header, a common isochronous packet (CIP) header (described below) and any other sort of data are added to a predetermined number of data blocks, thus forming a packet.
FIG. 22 shows the structure of a packet for isochronous communication. An isochronous communication packet is formed of a packet header, a header cyclic redundancy check (header CRC), a data field and a data cyclic redundancy check (data CRC).
The packet header is formed of "Data_Length" at representing the data length, "Tag" representing the kind of format of the corresponding packet (presence/absence of a CIP header or the like), "Channel" representing the number of a channel in which the packet is transmitted one of 0 to 63), "tcode" representing a code for processing, and a sync code Sy prescribed according to each of applications. The header CRC (Header_CRC) is a packet header error detection code, and the data CRC (Data_CRC) is a data field (Data field) error detection code. The data field is formed of a CIP header and real time data. Real time data in the data field is essential data to be transmitted (the above-mentioned data blocks).
FIG. 23 shows the format of a CIP header having an SYT area provided for synchronization of frames of a video signal. This CIP header is formed of an SID (source node ID) area for a transmission node number, a DBS (data block size) area for the length of a data block, an FN (fraction number) area for the number of fractions into which data is divided to form a packet, a QPC (quadlet padding count) area for the number of quadlets of padding data, an SHP area for a flag indicating the presence/absence of a source packet header, a DBC (data block counter) area for detecting a lacuna in the packet, an FMT area for a signal format representing the sort of transmitted data, a FDF (format dependent field) area used according to the signal format, and an SYT (sync time) area.
An area rev is provided as a reserved area.
Such a CIP header having an SYT area is used, for example, when data of a digital camera-recorder is transmitted.
FIG. 24 shows the relationship between the value in the FMT area and sorts of data. For example, if DVCR (digital video cassette recorder) data is transmitted, the value in the FMT area is set to 000000 (binary). If MPEG data (MPEG-TS data) is transmitted, the value in the FMT area is set to 100000 (binary).
FIG. 25 shows the format of the SYT area. As shown in FIG. 25, lower 12 bits in 16 bits in the SYT area represent a time stamp.
FIG. 26 shows the format of a CIP header having no SYT area. In this CIP header, the SYT area in the CIP header shown in FIG. 23 is used as an FDF area.
As described above, packets for isochronous communication are formed in accordance with formats corresponding to various sorts of data to be transmitted. For example, MPEG-TS data can also be transmitted in isochronous communication as well as DVCR data transmitted in isochronous communication as described in Japanese Patent Laid-Open No. 350649/1994.
However, communication of MPEG-PS data has not been performed by using the digital interface in accordance with the IEEE 1394 standard; it is difficult to perform communication of MPEG-PS data by using the digital interface in accordance with the IEEE 1394 standard.
That is, in MPEG-PS data, the pack forming a unit of data has a length of 2,048 bytes, which is much longer than that of the pack of MPG-TS data (188 bytes). Correspondingly, the number of fractions into which data is divided to form a packet is large. However, since only two bits are assigned to the FN area of the CIP header in which the number of fractions is written, the number of fractions is limited to 1 (=2.sup.0), 2 (=2.sup.1), 4 (=2.sup.2), and 8 (=2.sup.3), and it is difficult to increase the number of fractions above 8.
The above-mentioned padding data for MPEG-PS, data is usually longer than, for example, that for MPEG-TS data, but only three bits are assigned to the QPC area of the above-described CIP header. Therefore, it is difficult to use padding data equal to or larger than 8 quadlets.